Java Technologies - অ্যাপাচি কমন্স আইও (Apache Common IO) Advanced File Operations |
170
170

Symbolic Links (symlinks) হল একটি বিশেষ ধরনের ফাইল যা অন্য ফাইল বা ডিরেক্টরির পাথকে নির্দেশ করে। এটি লিনাক্স এবং ইউনিক্স সিস্টেমে ব্যবহৃত হয় এবং উইন্ডোজেও সিম্বলিক লিংক তৈরি করা সম্ভব। সাধারণত সিম্বলিক লিংক ব্যবহার করা হয় যখন কোনও ফাইল বা ডিরেক্টরির অন্য একটি লোকেশনে রিপ্রেজেন্টেশন তৈরি করতে হয়, কিন্তু মূল কনটেন্ট পরিবর্তন না করেই।

Apache Commons IO লাইব্রেরি সিম্বলিক লিঙ্ক হ্যান্ডলিংয়ের জন্য সরাসরি কোনো ক্লাস সরবরাহ না করলেও, এটি FileUtils এবং FilenameUtils এর মতো ক্লাসগুলো দিয়ে ফাইল সিস্টেমের কাজ করার জন্য অনেক উপকারী মেথড সরবরাহ করে। জাভার নিজস্ব java.nio.file API ব্যবহার করে সিম্বলিক লিঙ্ক হ্যান্ডলিং করা সাধারণত উত্তম।

এখানে, আমরা Apache Commons IO এবং Java NIO (New I/O) ব্যবহার করে সিম্বলিক লিঙ্কের জন্য কিছু সাধারণ কাজ দেখব।


১. Symbolic Link তৈরি করা

এটি Java NIO API ব্যবহার করে করা হয়, কারণ Apache Commons IO সরাসরি সিম্বলিক লিঙ্ক তৈরি করার জন্য কোনো ফাংশনালিটি সরবরাহ করে না।

উদাহরণ: Symbolic Link তৈরি করা (Java NIO)

import java.nio.file.*;
import java.io.IOException;

public class CreateSymbolicLinkExample {
    public static void main(String[] args) {
        Path target = Paths.get("originalFile.txt"); // মূল ফাইল
        Path link = Paths.get("symbolicLink.txt");   // সিম্বলিক লিংক

        try {
            // সিম্বলিক লিংক তৈরি করা
            Files.createSymbolicLink(link, target);
            System.out.println("Symbolic link created successfully!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

ব্যাখ্যা:

  • Files.createSymbolicLink(): এটি সিম্বলিক লিংক তৈরি করে যেখানে প্রথম প্যারামিটার হল লিঙ্কের নাম এবং দ্বিতীয় প্যারামিটার হল মূল ফাইল বা ডিরেক্টরি।
  • সিম্বলিক লিংকটি "symbolicLink.txt" নামে তৈরি হবে, যা "originalFile.txt" ফাইলের দিকে নির্দেশ করবে।

২. Symbolic Link এর Target পাথ পড়া

যদি আপনি একটি সিম্বলিক লিঙ্কের পাথ বা target পাথ বের করতে চান, তবে java.nio.file.Files ক্লাসের readSymbolicLink() মেথড ব্যবহার করতে পারেন।

উদাহরণ: Symbolic Link এর Target পাথ পড়া

import java.nio.file.*;
import java.io.IOException;

public class ReadSymbolicLinkExample {
    public static void main(String[] args) {
        Path link = Paths.get("symbolicLink.txt");  // সিম্বলিক লিঙ্ক ফাইল

        try {
            // সিম্বলিক লিঙ্কের টার্গেট পাথ পড়া
            Path target = Files.readSymbolicLink(link);
            System.out.println("Symbolic link points to: " + target);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

ব্যাখ্যা:

  • Files.readSymbolicLink() মেথডটি সিম্বলিক লিঙ্কের টার্গেট ফাইল বা ডিরেক্টরি ফিরে দেয়।
  • এই উদাহরণে symbolicLink.txt সিম্বলিক লিঙ্কের টার্গেট ফাইলের পাথ প্রিন্ট করা হবে।

৩. Symbolic Link চেক করা

কখনো কখনো এটি প্রয়োজন হতে পারে যে, একটি নির্দিষ্ট পাথ সিম্বলিক লিঙ্ক কি না তা পরীক্ষা করা। এই কাজটি Files.isSymbolicLink() মেথডের মাধ্যমে করা যায়।

উদাহরণ: Symbolic Link চেক করা

import java.nio.file.*;
import java.io.IOException;

public class CheckIfSymbolicLinkExample {
    public static void main(String[] args) {
        Path link = Paths.get("symbolicLink.txt");

        if (Files.isSymbolicLink(link)) {
            System.out.println("The path is a symbolic link.");
        } else {
            System.out.println("The path is NOT a symbolic link.");
        }
    }
}

ব্যাখ্যা:

  • Files.isSymbolicLink() মেথডটি চেক করে যে একটি পাথ সিম্বলিক লিঙ্ক কিনা এবং যদি হয়, তাহলে true রিটার্ন করে।

৪. Symbolic Link মুছে ফেলা

যেমন অন্যান্য ফাইল, সিম্বলিক লিঙ্কও Files.delete() মেথড ব্যবহার করে মুছে ফেলা যেতে পারে।

উদাহরণ: Symbolic Link মুছে ফেলা

import java.nio.file.*;
import java.io.IOException;

public class DeleteSymbolicLinkExample {
    public static void main(String[] args) {
        Path link = Paths.get("symbolicLink.txt");

        try {
            // সিম্বলিক লিঙ্ক মুছে ফেলা
            Files.delete(link);
            System.out.println("Symbolic link deleted successfully!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

ব্যাখ্যা:

  • Files.delete() মেথডটি ফাইল বা সিম্বলিক লিঙ্ক মুছে ফেলার জন্য ব্যবহৃত হয়।

সারাংশ

Symbolic Links ফাইল সিস্টেমের অত্যন্ত গুরুত্বপূর্ণ অংশ, যা ফাইল বা ডিরেক্টরি স্থানান্তর বা রেফারেন্স তৈরি করতে সাহায্য করে। Apache Commons IO সরাসরি সিম্বলিক লিঙ্কের জন্য কিছু মেথড সরবরাহ না করলেও, Java NIO API ব্যবহার করে সিম্বলিক লিঙ্ক তৈরি, পড়া, চেক করা এবং মুছে ফেলা যায়। এই কাজগুলো আপনি Files.createSymbolicLink(), Files.readSymbolicLink(), Files.isSymbolicLink(), এবং Files.delete() মেথড ব্যবহার করে সহজে করতে পারেন।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion